export interface TreeNode {
  key: string;
  id: string;
  title: string;
  level: number;
  children?: TreeNode[];
  isLeaf?: boolean;
  checkable?: boolean;
}

export type TreeType = '热源' | '热站' | '小区' | '热用户' | '';

export interface TreeTypeConfig {
  type: TreeType;
  apiType: number;
  validLevel: number;
}

export interface CustomerTreeProps {
  // 树的数据
  treeData?: TreeNode[];
  // 选中的节点keys
  selectedKeys?: string[];
  // 勾选的节点keys
  checkedKeys?: string[];
  // 是否显示复选框
  checkable?: boolean;
  // 是否显示图标
  showIcon?: boolean;
  // 是否严格勾选
  checkStrictly?: boolean;
  // 初始选中的类型
  defaultType?: TreeType;
  // 自定义加载数据方法
  loadData?: (type: number, id: string) => Promise<any>;
  // 树类型列表
  treeList?: TreeType[];
}

export interface TreeProps {
  // 树的数据
  treeData?: TreeNode[];
  // 选中的节点keys
  selectedKeys?: string[];
  // 勾选的节点keys
  checkedKeys?: string[];
  // 是否显示复选框
  checkable?: boolean;
  // 是否显示图标
  showIcon?: boolean;
  // 是否严格勾选
  checkStrictly?: boolean;
  // 自定义加载数据方法
  loadData?: (node: any) => Promise<void>;
  // 选择类型：'default' | 'source' | 'station' | 'community' | 'user'
  selectType?: string;
} 